package com.example.springbootbookv2.listener;

/*import com.example.springbootbookv2.model.User;
import com.example.springbootbookv2.service.UserService;
import org.springframework.data.redis.core.RedisTemplate;*/

import javax.annotation.Resource;
import javax.servlet.ServletContextEvent;
import javax.servlet.ServletContextListener;
import javax.servlet.annotation.WebListener;
import java.util.List;

/**
 * 监听器
 * @author waqwb
 */
@WebListener
public class UserListener implements ServletContextListener {
   /* @Resource
    private RedisTemplate redisTemplate;

    @Resource
    private UserService userService;

    private static final String ALL_USER = "ALL_USER_LIST";*/


    @Override
    public void contextInitialized(ServletContextEvent sce) {

        /*//查询数据库中所有的用户
        List<User> userList = userService.findAll();
        //清除缓存中的用户数据
        redisTemplate.delete(ALL_USER);
       *//*
            将数据存放到redis缓存中
            leftPushAll：查询缓存中所有的用户数据，
            ALL_USER键若不存在，会创建该键及与其相关联的List
            之后再将参数中的userList从左到右依次插入
         *//*
        redisTemplate.opsForList().leftPushAll(ALL_USER,userList);
        *//*
            真实项目中需要注释掉，查询所有用户的数据
            range：取链表中的全部元素，
            其中0表示第一个元素，-1表示最后一个元素
         *//*
        List<User> range = redisTemplate.opsForList().range(ALL_USER, 0, -1);
        System.out.println("缓存中目前的用户数有" + range.size() + "人");*/
        System.out.println("ServletContext上下文初始化");
    }

    @Override
    public void contextDestroyed(ServletContextEvent sce) {
        System.out.println("ServletContext上下文销毁");
    }
}
